import { RMIProxyObject } from "../../Engine/RMI/RMIProxyObject";
import { IRunBusinessPrx } from "./IRunBusinessPrx";
import { AMI_IRunBusiness_getRunBuessinessNpc } from "./AMI_IRunBusiness_getRunBuessinessNpc";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
import { Outgoing } from "../../Engine/RMI/Outgoing";
import { AMI_IRunBusiness_handInItem } from "./AMI_IRunBusiness_handInItem";
import { AMI_IRunBusiness_runBuessinessBuyItem } from "./AMI_IRunBusiness_runBuessinessBuyItem";
import { AMI_IRunBusiness_runBuessinessSellItem } from "./AMI_IRunBusiness_runBuessinessSellItem";
type int = number;
//class IRunBusinessPrxHelper
    
    export  class IRunBusinessPrxHelper extends RMIProxyObject implements IRunBusinessPrx
    {
        constructor()
        {
            
            super();name = "IRunBusiness";
            return;
        }

        public getRunBuessinessNpc_async(arg1: AMI_IRunBusiness_getRunBuessinessNpc, arg2: int): void
        {
            var loc1=makeContext(session);
            var loc2=makeCall("getRunBuessinessNpc");
            var loc3;
            (loc3 = new SerializeStream()).writeInt(arg2);
            Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
            return;
        }

        public handInItem_async(arg1: AMI_IRunBusiness_handInItem): void
        {
            var loc1=makeContext(session);
            var loc2=makeCall("handInItem");
            var loc3=new SerializeStream();
            Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
            return;
        }

        public runBuessinessBuyItem_async(arg1: AMI_IRunBusiness_runBuessinessBuyItem, arg2: int, arg3: int, arg4: int): void
        {
            var loc1=makeContext(session);
            var loc2=makeCall("runBuessinessBuyItem");
            var loc3;
            (loc3 = new SerializeStream()).writeInt(arg2);
            loc3.writeInt(arg3);
            loc3.writeInt(arg4);
            Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
            return;
        }

        public runBuessinessSellItem_async(arg1: AMI_IRunBusiness_runBuessinessSellItem, arg2: int, arg3: string, arg4: int): void
        {
            var loc1=makeContext(session);
            var loc2=makeCall("runBuessinessSellItem");
            var loc3;
            (loc3 = new SerializeStream()).writeInt(arg2);
            loc3.writeString(arg3);
            loc3.writeInt(arg4);
            Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
            return;
        }

        public static /* const */NAME: string="Message.Game.IRunBusiness";
    }
